package com.authsphere.common.annotation;

import com.authsphere.common.enums.AlgorithmType;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * @program: AuthSphere
 * @description:
 * @author: YuKai Fan
 * @create: 2025/3/27 21:52
 **/
@Documented
@Target({ElementType.FIELD, ElementType.PARAMETER})
@Retention(RetentionPolicy.RUNTIME)
public @interface CryptField {

    /**
     * secretKey
     * @return secretKey
     */
    String secretKey() default "";

    /**
     * algorithmType
     * @return algorithmType
     */
    AlgorithmType algorithmType() default AlgorithmType.NONE;
}
